package com.ruoyi.park.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 出入库记录对象 omp_ma_in_out_record
 *
 * @author cjie
 * @date 2021-09-16
 */
@Data
@ApiModel
public class MaInOutRecord extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** Id */
    @ApiModelProperty(value = "Id")
    private String id;

    /** 编号 */
    @Excel(name = "编号")
    @ApiModelProperty(value = "编号")
    private String recordNumber;

    /** 仓库Id */
    @Excel(name = "仓库Id")
    @ApiModelProperty(value = "仓库Id")
    private String warehouseId;

    /** 部门名称 */
    @Excel(name = "部门名称")
    @ApiModelProperty(value = "部门名称")
    private String deptName;

    /** 用户名称 */
    @Excel(name = "用户名称")
    @ApiModelProperty(value = "用户名称")
    private String userName;

    @Excel(name = "用途")
    @ApiModelProperty(value = "用途")
    private String use1;

    @Excel(name = "用于")
    @ApiModelProperty(value = "用于")
    private String usePark;

    /** 删除标志(0正常 1删除) */
    @ApiModelProperty(value = "删除标志(0正常 1删除)")
    private String delFlag;

    /** 租户Id */
    @Excel(name = "租户Id")
    @ApiModelProperty(value = "租户Id")
    private String tenantId;

    /** 记录类型(0入库,1出库，2盘库) */
    @Excel(name = "记录类型(0入库,1出库,2盘库)")
    @ApiModelProperty(value = "记录类型(0入库,1出库，2盘库)")
    private String recordType;

    /** 是否快速出库 */
    @ApiModelProperty(value = "是否快速出库(0 no,1 yes)")
    private String isOut;

    /** 操作时间 */
    @ApiModelProperty(value = "出入盘库日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date operateTime;

    //以下属性为页面视图属性
    /** 仓库名称 */
    @Excel(name = "仓库名称")
    @ApiModelProperty(value = "仓库名称")
    private String warehouse;


    /** 物资集合 */
    @Excel(name = "物资集合")
    @ApiModelProperty(value = "物资集合")
    private List<MaMaterial> maMaterialList;

    /** 物资名称 */
    @Excel(name = "物资名称")
    @ApiModelProperty(value = "物资名称")
    private String materialName;

    /** 物料编码 */
    @Excel(name = "物料编码")
    @ApiModelProperty(value = "物料编码")
    private String materialNum;

    /** 规格 */
    @Excel(name = "规格")
    @ApiModelProperty(value = "规格")
    private String standards;

    /** 单位 */
    @Excel(name = "单位")
    @ApiModelProperty(value = "单位")
    private String unit;

    /** 单价 */
    @Excel(name = "单价")
    @ApiModelProperty(value = "单价")
    private BigDecimal unitPrice;

    @Excel(name = "数量")
    @ApiModelProperty(value = "数量")
    private Double quantity;

    /** 类别 */
    @Excel(name = "类别")
    @ApiModelProperty(value = "类别")
    private Long category;

    @Excel(name = "类别名称")
    @ApiModelProperty(value = "类别名称")
    private String categoryName;
}
